Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Encoder-decoder task support #16

Open
wants to merge 11 commits into
base: master
Choose a base branch
from

Conversation

top-sekret
Copy link
Member

@top-sekret top-sekret commented Apr 6, 2023

This is a draft pull request that adds support for encoder-decoder tasks, as seen at latest OI finals.

Notes:

  • Currently, the decoder could get the encoder input just by opening a file with the correct name. This will be addressed.
  • Lacks unit tests.

Also see sio2project/oioioi#191.

@top-sekret
Copy link
Member Author

I have addressed the security issue and rebased this branch. I now mark it as ready for review, as we may come up with unit tests during the review process.

@top-sekret top-sekret marked this pull request as ready for review April 24, 2023 00:40
@top-sekret top-sekret changed the title Draft: Encoder-decoder task support Encoder-decoder task support Apr 24, 2023
@top-sekret
Copy link
Member Author

Also note that this pull request can be merged before the OIOIOI one, because it does not alter any visible behavior. The converse is of course not true.

from sio.workers.util import decode_fields, replace_invalid_UTF, tempcwd, TemporaryCwd
from sio.workers.file_runners import get_file_runner

import six
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

is this needed? we don't support python 2.x anymore.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is most probably unneeded and is an artifact of trying to merge these changes with an older Python 2 codebase, used in Szkopuł. I am for removing this.

@top-sekret
Copy link
Member Author

I really wish this could be made to work. However, I am being stopped by what I think is a sio2jail bug.

@MasloMaslane
Copy link
Member

I think it's because Github runners don't give access to perf counters. But recently we created our own runner that can use sio2jail.

@top-sekret
Copy link
Member Author

I think it's because Github runners don't give access to perf counters. But recently we created our own runner that can use sio2jail.

I mean they won't even run locally.

@@ -28,13 +28,13 @@ def _make_cmdline(self, executor):
class CCompiler(CStyleCompiler):
compiler = 'gcc'
# Without -static as there is no static compilation on Mac
Copy link
Contributor

@otargowski otargowski May 29, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not sure whether this comment even has sense.

I would guess that the docker images on macOS don't have the static linking issues like the base OS.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would guess that we don't care about crap macOS in workers.

@top-sekret
Copy link
Member Author

top-sekret commented Dec 18, 2023

Okay, I'm out of patience. The tests do work. However, the CI is absolute crap and can't even set up Python.

I am reverting (actually rebasing out to get rid of the mess) all CI related commits. I will be running the tests on docker.io/library/python:3.9 and docker.io/library/debian:bookworm manually to ensure that the changes work.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants